1. Field of the Invention
The present invention relates generally to a computer implemented method, data processing system, and computer program product for tracking a moving inventory. More specifically, the present invention relates to modeling assets relative to electronically sensed position of such assets and presenting such assets in a virtual world that models features in the real world.
2. Description of the Related Art
Modern uses of networked computers leverage the graphics processing power of client computers. The client computer is a computer typically assigned the task of supporting user input and displaying output to a user. Many users reach online environments called virtual worlds by using a client computer. A virtual world permits a user to adopt an avatar or a graphical representation of the user. The user has the power to move the avatar, have the avatar interact with objects, and have the avatar interact with the avatars of other users.
A virtual world is the collection of all objects of the virtual world and the virtual areas, if any, associated with the objects. A virtual world may include simulation of object attributes, such as textures and sounds, as well as rules under which real-world physics are simulated or modified, all of which can be supported by a virtual world server. An object can model a real world item, or a prototype of a real world item. Accordingly, an object of the virtual world may be used to simulate solid, liquid, gas and combinations of these materials.
An example of an object is an avatar. An avatar is an object that represents a true-to-life or a fanciful depiction of a person. The avatar may be rendered in a manner used by the virtual world server to render other objects. In addition, an avatar may serve other functions in addition to those normally associated with an object. An avatar perspective is the combination of the avatar location and attitude. In addition, a perspective may be modified by a stance of the avatar. The viewport may include menus, controls, and messages associated with the viewport to provide information pertaining to the contents of the viewport and to allow user actions upon the viewport.
A virtual world depends on a coordinate system to create anchor points where avatars and objects may be located for purposes of rendering the avatars and objects to each user's computer. Coordinates are two or more units of distance that define a position in a virtual world. The coordinates may be a Cartesian set of points that define planes and altitudes, however, global coordinates also are known to be used. Typically, an object has a location referenced by a triplet of numbers, and optionally a region or other descriptor of a subset of space within the virtual world.
In addition to a location, proper rendering of an object or avatar may depend on an orientation or attitude of the object or avatar. An attitude is an overall orientation of an object or avatar in relation to a plane or a vector. For example, an attitude may be based on a number of degrees that an object is offset from a positive direction along a coordinate axis. For virtual worlds that form analogs to a real world, north and south compass points may correspond to a positive direction along a first axis and a negative direction along the axis. East and west may be represented in a similar manner, along a second axis perpendicular to the first axis. A third axis may correspond to height. Attitudes may also include offsets of inclination above a plane.
Some virtual worlds are organized to present an avatar within a three dimensional environment. Such virtual worlds may provide a “first person point of view.” Within a first person point of view, a client computer renders scenery to a two dimensional screen to produce a three dimensional illusion or effect. An example of a three dimensional illusion includes diminishing the size of an object as the object becomes relatively distant from the avatar's position in the virtual world. Another example of a three dimensional illusion is displaying a nearer object as obscuring a more distant object. Each of these illusions is controlled by rendering rules. Rendering rules are a set of rules or steps that a client computer executes to display the two-dimensional image such that the display provides impressions of depth that users expect to see in real life scenery.
Many virtual worlds provide a user a teleport feature that permits a user to change an avatar location. The changed location causes a perspective of the avatar to change, and thus changes a screen image of the virtual world. The perspective may cause objects to be rendered to show the objects at different orientations and distances from the avatar. The perspective may cause formerly rendered objects to be obscured by other objects. Likewise, the perspective may cause formerly rendered objects to be so distant that the objects are not rendered in the second perspective. In this case, a client computer renders a new set of objects to the user's computer display screen.
Scenery and renderings may change in a virtual world in response to movements of objects within such a world. Avatars are a class of objects that move. Other objects may move, for example, virtual trees may move in response to a modeled wind, and virtual water may flow in response to modeling of gravity and fluid dynamics. Each object can be modeled to varying levels of complexity and detail according to the geometry provided to a data processing system, and a processing power of the data processing system. Typically, a virtual world server renders a scene in response to inputs made by users. For example, a first user that logs into a virtual world server may be presented a view that includes avatars that move in response to movements and commands given by users that each control one or more avatars in the virtual area that the user has entered.
In addition to advances in providing collectivized simulations of real environments in a virtual world, engineers have provided increasingly sophisticated ways to track inventory in the real world. For example, bar code is now giving way to marking assets with RFID tags. A radio frequency identifier (RFID) tag is a transponder that can respond to a radio frequency (RF) signal with a self-identifying signal. The transponder can be passive, active, or a combination of the two. The self-identifying signal can be globally unique, or unique as compared to asset of RFID tags used for an application. RFID tags are arranged in varying sizes and shapes including as small as a piece of chewing gum, and as flat as card stock. Consequently, RFID tags may be attached to a wide variety of assets.